package com.css.fxfzfxqh.modules.seismicHazardData.repository;

import com.css.fxfzfxqh.modules.seismicHazardData.entity.HazardDataRecordEntity;
import com.css.fxfzfxqh.modules.seismicHazardData.entity.PsHazardDataEntity;
import com.css.fxfzfxqh.modules.seismicHazardData.entity.PsHazardDataValueEntity;
import com.css.fxfzfxqh.modules.seismicHazardData.param.psHazard.PageParam;
import com.css.fxfzfxqh.modules.seismicHazardData.param.psHazard.RecordPageParam;

import java.util.List;
import java.util.Map;

public interface PsHazardRepository {
    void savePsHazardData(PsHazardDataEntity psHazardDataEntity,String tableName);

    void savePsHazardDataValue(PsHazardDataValueEntity psHazardDataValueEntity,String tableName);

    PsHazardDataEntity getPsHazardDataById(String kilometerGridId,String tableName);

    List<PsHazardDataValueEntity> getPsHazardDataValueByPhId(String id,String type,String tableName);

    List<String> getAllKilometerGridId(String tableName);

    void deleteByKilometerGridId(String ids,String tableName);

    void deleteValueByPhIdAndType(String id,String type,String tableName);

    List<PsHazardDataEntity> getAllPhIdByKilometerGridId(String id,String tableName);

    Map<String, Object> page(PageParam param, String mainTableName);

    void update(PsHazardDataEntity it, String mainTableName);

    void saveRecord(HazardDataRecordEntity recordEntity);

    Map<String, Object> uploadRecords(RecordPageParam param, Integer dataRange, String region);
}
